@Article{Bercea2016,
  author =       {Gheorghe{-}Teodor Bercea and Andrew T. T. McRae and
                  David A. Ham and Lawrence Mitchell and Florian
                  Rathgeber and Luigi Nardi and Fabio Luporini and
                  Paul H. J. Kelly},
  title =        {A structure-exploiting numbering algorithm for
                  finite elements on extruded meshes, and its
                  performance evaluation in Firedrake},
  journal =      {Geoscientific Model Development},
  year =         2016,
  volume =       9,
  number =       10,
  pages =        {3803--3815},
  doi =          {10.5194/gmd-9-3803-2016},
  archiveprefix ={arXiv},
  eprint =       {1604.05937},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1604.05937}
}

@Misc{Gibson2018,
  author =       {Thomas H. Gibson and Lawrence Mitchell and David A.
                  Ham and Colin J. Cotter},
  title =        {{A domain-specific language for the hybridization
                  and static condensation of finite element methods}},
  year =         2018,
  archiveprefix ={arXiv},
  eprint =       {1802.00303},
  primaryclass = {cs.MS},
  url =          {https://arxiv.org/abs/1802.00303}
}

@Article{Ham2019,
  author =       {David A. Ham and Lawrence Mitchell and Alberto
                  Paganini and Florian Wechsung},
  title =        {{Automated shape differentiation in the Unified Form
                  Language}},
  journal =      {Structural and Multidisciplinary Optimization},
  year =         2019,
  doi =          {10.1007/s00158-019-02281-z},
  archiveprefix ={arXiv},
  eprint =       {1808.08083},
  primaryclass = {math.NA},
}

@Article{Homolya2016,
  author =       {Mikl\'os Homolya and David A. Ham},
  title =        {A parallel edge orientation algorithm for
                  quadrilateral meshes},
  journal =      {SIAM Journal on Scientific Computing},
  year =         2016,
  volume =       38,
  number =       5,
  pages =        {S48--S61},
  doi =          {10.1137/15M1021325},
  archiveprefix ={arXiv},
  eprint =       {1505.03357},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1505.03357}
}

@Misc{Homolya2017a,
  author =       {Mikl\'os Homolya and Robert C. Kirby and David A.
                  Ham},
  title =        {{Exposing and exploiting structure: optimal code
                  generation for high-order finite element methods}},
  year =         2017,
  archiveprefix ={arXiv},
  eprint =       {1711.02473},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1711.02473}
}

@Article{Homolya2018,
  author =       {Homolya, M. and Mitchell, L. and Luporini, F. and
                  Ham, D.},
  title =        {TSFC: A Structure-Preserving Form Compiler},
  journal =      {SIAM Journal on Scientific Computing},
  year =         2018,
  volume =       40,
  number =       3,
  pages =        {C401-C428},
  doi =          {10.1137/17M1130642},
  url =          {https://doi.org/10.1137/17M1130642}
}

@Article{Kirby2017,
  author =       {Robert C. Kirby and Lawrence Mitchell},
  title =        {{Solver composition across the PDE/linear algebra
                  barrier}},
  journal =      {SIAM Journal on Scientific Computing},
  year =         2018,
  volume =       40,
  number =       1,
  pages =        {C76-C98},
  doi =          {10.1137/17M1133208},
  archiveprefix ={arXiv},
  eprint =       {1706.01346},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1706.01346}
}

@Misc{Kirby2018,
  author =       {Robert C. Kirby and Lawrence Mitchell},
  title =        {Code generation for generally mapped finite
                  elements},
  year =         2018,
  archiveprefix ={arXiv},
  eprint =       {1808.05513},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1808.05513}
}

@Article{Lange2016,
  author =       {Michael Lange and Lawrence Mitchell and Matthew G.
                  Knepley and Gerard J. Gorman},
  title =        {Efficient mesh management in {Firedrake} using
                  {PETSc-DMPlex}},
  journal =      {SIAM Journal on Scientific Computing},
  year =         2016,
  volume =       38,
  number =       5,
  pages =        {S143--S155},
  doi =          {10.1137/15M1026092},
  archiveprefix ={arXiv},
  eprint =       {1506.07749},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1506.07749}
}

@Article{Luporini2015,
  author =       {Fabio Luporini and Ana Lucia Varbanescu and Florian
                  Rathgeber and Gheorghe-Teodor Bercea and J.
                  Ramanujam and David A. Ham and Paul H. J. Kelly},
  title =        {Cross-Loop Optimization of Arithmetic Intensity for
                  Finite Element Local Assembly},
  journal =      {ACM Transactions on Architecture and Code
                  Optimization},
  year =         2015,
  volume =       11,
  number =       4,
  pages =        {57:1--57:25},
  url =          {http://doi.acm.org/10.1145/2687415},
  doi =          {10.1145/2687415},
}

@Article{Luporini2017,
  author =       {Fabio Luporini and David A. Ham and Paul H. J.
                  Kelly},
  title =        {An algorithm for the optimization of finite element
                  integration loops},
  journal =      {ACM Transactions on Mathematical Software},
  year =         2017,
  volume =       44,
  number =       1,
  pages =        {3:1--3:26},
  doi =          {10.1145/3054944},
  archiveprefix ={arXiv},
  eprint =       {1604.05872},
  primaryclass = {cs.MS},
}

@Article{Markall2010,
  author =       {Graham R. Markall and David A. Ham and Paul H. J.
                  Kelly},
  title =        {Towards generating optimised finite element solvers
                  for GPUs from high-level specifications},
  journal =      {Procedia Computer Science},
  year =         2010,
  volume =       1,
  number =       1,
  pages =        {1815--1823},
  note =         {{ICCS} 2010},
  doi =          {10.1016/j.procs.2010.04.203},
  url =          {http://dx.doi.org/10.1016/j.procs.2010.04.203},
}

@Article{Markall2012,
  author =       {Graham R. Markall and A. Slemmer and David A. Ham
                  and Paul H. J. Kelly and Chris D. Cantwell and
                  Spencer J. Sherwin},
  title =        {Finite element assembly strategies on multi- and
                  many-core architectures},
  journal =      {International Journal for Numerical Methods in
                  Fluids},
  year =         2013,
  volume =       71,
  pages =        {80--97},
  doi =          {10.1002/fld.3648},
  url =          {http://dx.doi.org/10.1002/fld.3648}
}

@InProceedings{Markall2013,
  author =       {Graham R. Markall and Florian Rathgeber and Lawrence
                  Mitchell and Nicolas Loriant and Carlo Bertolli and
                  David A. Ham and Paul H. J. Kelly},
  title =        {Performance-Portable Finite Element Assembly Using
                  PyOP2 and FEniCS},
  booktitle =    {28th International Supercomputing Conference, ISC,
                  Proceedings},
  year =         2013,
  editor =       {Kunkel, Julian Martin and Ludwig, Thomas and Meuer,
                  Hans Werner},
  volume =       7905,
  series =       {Lecture Notes in Computer Science},
  pages =        {279--289},
  publisher =    {Springer},
  doi =          {10.1007/978-3-642-38750-0_21},
  url =          {http://dx.doi.org/10.1007/978-3-642-38750-0_21}
}

@Article{McRae2016,
  author =       {Andrew T. T. McRae and Gheorghe-Teodor Bercea and
                  Lawrence Mitchell and David A. Ham and Colin J.
                  Cotter},
  title =        {Automated generation and symbolic manipulation of
                  tensor product finite elements},
  journal =      {SIAM Journal on Scientific Computing},
  year =         2016,
  volume =       38,
  number =       5,
  pages =        {S25--S47},
  doi =          {10.1137/15M1021167},
  archiveprefix ={arXiv},
  eprint =       {1411.2940},
  primaryclass = {math.NA},
  url =          {http://arxiv.org/abs/1411.2940}
}

@Article{Mitchell2016,
  author =       {Lawrence Mitchell and Eike Hermann M\"uller},
  title =        {High level implementation of geometric multigrid
                  solvers for finite element problems: applications in
                  atmospheric modelling},
  journal =      {Journal of Computational Physics},
  year =         2016,
  volume =       327,
  pages =        {1--18},
  doi =          {10.1016/j.jcp.2016.09.037},
  archiveprefix ={arXiv},
  eprint =       {1605.00492},
  primaryclass = {cs.MS},
  url =          {http://arxiv.org/abs/1605.00492}
}

@InProceedings{Rathgeber2012,
  author =       {Florian Rathgeber and Graham R. Markall and Lawrence
                  Mitchell and Nicolas Loriant and David A. Ham and
                  Carlo Bertolli and Paul H. J. Kelly},
  title =        {PyOP2: A High-Level Framework for
                  Performance-Portable Simulations on Unstructured
                  Meshes},
  booktitle =    {High Performance Computing, Networking Storage and
                  Analysis, SC Companion:},
  year =         2012,
  pages =        {1116-1123},
  address =      {Los Alamitos, CA, USA},
  publisher =    {IEEE Computer Society},
  isbn =         {978-1-4673-3049-7},
  doi =          {10.1109/SC.Companion.2012.134},
  url =          {http://dx.doi.org/10.1109/SC.Companion.2012.134}
}

@Article{Rathgeber2016,
  author =       {Rathgeber, Florian and Ham, David A. and Mitchell,
                  Lawrence and Lange, Michael and Luporini, Fabio and
                  Mcrae, Andrew T. T. and Bercea, Gheorghe-Teodor and
                  Markall, Graham R. and Kelly, Paul H. J.},
  title =        {Firedrake: Automating the Finite Element Method by
                  Composing Abstractions},
  journal =      {ACM Trans. Math. Softw.},
  year =         2016,
  volume =       43,
  number =       3,
  pages =        {24:1--24:27},
  doi =          {10.1145/2998441},
  archiveprefix ={arXiv},
  eprint =       {1501.01809},
  url =          {http://arxiv.org/abs/1501.01809},
  primaryclass = {cs.MS}
}

@Misc{Sun2019,
  author =       {Tianjiao Sun and Lawrence Mitchell and Kaushik
                  Kulkarni and Andreas Kl\"ockner and David A. Ham and
                  Paul H. J. Kelly},
  title =        {A study of vectorization for matrix-free finite
                  element methods},
  year =         2019,
  archiveprefix ={arXiv},
  eprint =       {1903.08243},
  primaryclass = {cs.MS}
}
